﻿//VARIABLES PARA LA PAGINACION BUSQUEDA MP
var tableName = "";
var itemsPerPage = 0;
var currentPage = 1;
var pages = 0;
var inited = false;

$(document).ready(main);

function main() {
    $("#FechaInicio").datepicker({ dateFormat: 'dd/mm/yy' });
    $("#FechaFin").datepicker({ dateFormat: 'dd/mm/yy' });
    $("#FechaInicioB").datepicker({ dateFormat: 'dd/mm/yy' });
    $("#FechaFinB").datepicker({ dateFormat: 'dd/mm/yy' });
    $("#FechaM").datepicker({ dateFormat: 'dd/mm/yy' });
    $("#BuscarContratoPreventivo").button({
        icons: {
            primary: "ui-icon-search"
        },
        text: false
    });
    $("#BuscarEdificio").button({
        icons: {
            primary: "ui-icon-search"
        },
        text: false
    });
//    $("#botonModificarB2").button({
//        icons: {
//            primary: "ui-icon-pencil"
//            //primary: "ui-icon-cancel"
//        },
//        text: false
//    });
//    $("#botonEliminarB2").button({
//        icons: {
//            primary: "ui-icon-trash"
//        },
//        text: false
//    });
    $("#FechaR").datepicker({ dateFormat: 'dd/mm/yy' });
    $("#botonRegistro").click(registrarMantenimientoPreventivo);
    $("#botonCancelar").click(menuMantenimientoPreventivo);
    $("#busqueda").hide();    
    $("#BotonBuscar").click(buscarContrato);
    $("#botonBusquedaB").click(buscarMantenimientoPreventivo);
    $("#botonCancelarB").click(menuMantenimientoPreventivo);
    $("#botonEliminarB").click(eliminarMantenimientoPreventivo);
    $("#botonModificarB").hide();
    $("#botonEliminarB").hide();
    $("#botonLimpiarB").click(LimpiarBusquedaMP);
    $("#BotonLimpiar").click(LimpiarBusquedaCP);
    cargarMantenibles();
    cargarTodosMantenibles();
    cargarProveedores();
    cargarEdificios();
}

function LimpiarBusquedaCP() {
    //limpiar edificio autocompletado
    document.getElementById("EdificioAutocompletado").value = "";
    //limpiar proveedor autocompletado
    document.getElementById("ProveedorAutocompletado").value = "";
    //limpiar mantenible autocompletado
    document.getElementById("ManteniblesAutocompletado").value = "";
    //limpiando las fechas
    document.getElementById("FechaInicio").value = "";
    document.getElementById("FechaFin").value = "";
}

function LimpiarBusquedaMP() {
    //limpiar edificio select
    jQuery("#SelectEdificioB option").each(function () {
        jQuery(this).attr("selected", "selected");
        if (jQuery(this).val() == "") {
            jQuery(this).attr("selected", "selected");
            return false;
        }
    });
    //limpiar proveedor select 
    jQuery("#Select1 option").each(function () {
        jQuery(this).attr("selected", "selected");
        if (jQuery(this).val() == "") {
            jQuery(this).attr("selected", "selected");
            return false;
        }
    });
    //limpiar mantenible select
    jQuery("#SelectActivo option").each(function () {
        jQuery(this).attr("selected", "selected");
        if (jQuery(this).val() == "") {
            jQuery(this).attr("selected", "selected");
            return false;
        }
    });
    //limpiando las fechas
    document.getElementById("FechaInicioB").value = "";
    document.getElementById("FechaFinB").value = "";
}

function cargarEdificios() {
    var enviar = {
        idEdificio: ""
    }

    console.log(enviar);

    var jsonData = JSON.stringify(enviar);

    $.ajax({
        type: "POST",
        data: jsonData,
        dataType: "json",
        contentType: "application/json; charset=utf-8",
        url: "cargarEdificios",
        success: function (data) {
            var lista = data.listaEdificio;
            $("#SelectEdificioB").find('option').remove().end().append("<option></option>");
            $.each(lista, function (i, item) {
                $("#SelectEdificioB").append("<option>" + item.Nombre + "</option>");
            });
        }
    });
}

function cargarProveedores() {
    var enviar = {
        id_proveedor: ""
    }

    console.log(enviar);

    var jsonData = JSON.stringify(enviar);

    $.ajax({
        type: "POST",
        data: jsonData,
        dataType: "json",
        contentType: "application/json; charset=utf-8",
        url: "cargarProveedores",
        success: function (data) {

            console.log(data);

            var lista = data.listaProveedores;

            $("#Select1").find('option').remove().end().append("<option></option>");
            $.each(lista, function (i, item) {
                $("#Select1").append("<option>" + item.NombreProveedor + "</option>");
            });
        }
    });
}

function cargarTodosMantenibles() {
    var enviar = {
        NombreProveedor: ""
    }

    console.log(enviar);

    var jsonData = JSON.stringify(enviar);

    $.ajax({
        type: "POST",
        data: jsonData,
        dataType: "json",
        contentType: "application/json; charset=utf-8",
        url: "cargarTodosMantenibles",
        success: function (data) {

            console.log(data);

            var lista = data.listaTodosMantenimientos;

            $("#SelectActivo").find('option').remove().end().append("<option></option>");
            $.each(lista, function (i, item) {
                $("#SelectActivo").append("<option>" + item.NombreMantenible + "</option>");
            });
        }
    });
}

function cargarMantenibles() {
    var enviarC = {
        NombreProveedor: $("#Select1").attr("value")
    }

    console.log(enviarC);

    var jsonData = JSON.stringify(enviarC);

    $.ajax({
        type: "POST",
        data: jsonData,
        dataType: "json",
        contentType: "application/json; charset=utf-8",
        url: "cargarMantenibles",
        success: function (data) {

            console.log(data);

            var lista = data.listaMantenimientos;

            $("#SelectActivo").find('option').remove().end().append("<option></option>");
            $.each(lista, function (i, item) {
                $("#SelectActivo").append("<option value = \"" + item.id_mantenible + "\">" + item.NombreMantenible + "</option>");
            });
        }
    });
}

function menuMantenimientoPreventivo() {
    window.history.back();
}


$(function () {
    var nameB = $("#nameB"),
        emailB = $("#emailB"),
        passwordB = $("#passwordB"),
        allFields = $([]).add(nameB).add(emailB).add(passwordB),
        tips = $(".validateTips");

    function updateTips(t) {
        tips
                .text(t)
                .addClass("ui-state-highlight");
        setTimeout(function () {
            tips.removeClass("ui-state-highlight", 1500);
        }, 500);
    }

    $("#dialog-form").dialog({
        autoOpen: false,
        height: 600,
        width: 850,
        modal: true,
        buttons: {
            "Aceptar": function () {
                var bValid = true;
                allFields.removeClass("ui-state-error");
                if (bValid) {
                    if ($("input:radio[name='R1']").is(":checked")) {
                        var idContrato, nombreEdificio, idEdificio, nombreProveedor, fechaRegistro, periodo, nombreMantenible, idMantenible;
                        $("input:radio[name='R1']:checked").parents("tr").children("td").each(function (index2) {
                            switch (index2) {
                                case 1:
                                    idContrato = $(this).text();
                                    break;
                                case 2:
                                    nombreEdificio = $(this).text();
                                    break;
                                case 3:
                                    idEdificio = $(this).text();
                                    break;
                                case 4:
                                    nombreProveedor = $(this).text();
                                    break;
                                case 5:
                                    fechaRegistro = $(this).text();
                                    break;
                                case 6:
                                    periodo = $(this).text();
                                    break;
                                case 7:
                                    nombreMantenible = $(this).text();
                                    break;
                                case 8:
                                    idMantenible = $(this).text();
                                    break;
                            }
                        })

                        //alert(idMantenible);
                        document.getElementById("CodigoDocumento").value = idContrato;
                        document.getElementById("SelectEdificioR").value = nombreEdificio;
                        document.getElementById("Select2").value = nombreMantenible;
                        document.getElementById("Select2").name = idMantenible;
                        document.getElementById("SelectEdificioR").name = idEdificio;
                        //cargarMantenibles();
                        $(this).dialog("close");
                    }
                    else {
                        alert("Debe seleccionar una fila");
                    }
                }
            },
            Cancel: function () {
                $(this).dialog("close");
            }
        },
        close: function () {
            allFields.val("").removeClass("ui-state-error");
        }
    });

    $("#BuscarContratoPreventivo").click(function () { $("#dialog-form").dialog("open"); });

});


function mostrarTabla() {

}

function borrarErrores() {
    document.getElementById("errorCodigoDocumentoR").innerHTML = "";
    document.getElementById("errorEdificioR").innerHTML = "";
    document.getElementById("errorMantenibleR").innerHTML = "";
    document.getElementById("errorFechaR").innerHTML = "";
    document.getElementById("errorCostoR").innerHTML = "";
    document.getElementById("errorDescripcionR").innerHTML = "";
}

function borrarErroresModificar() {
    document.getElementById("errorCostoM").innerHTML = "";
    document.getElementById("errorDescripcionM").innerHTML = "";
}

function registrarMantenimientoPreventivo() {
//    borrarErrores();
    var enviarRegistroMantenimientoPreventivo = {
        id_contrato_preventivo: $("#CodigoDocumento").attr("value"),
//        NombreEdificio: $("#SelectEdificioR").attr("value"),
        //        NombreMantenible: $("#Select2").attr("value"),
        id_Mantenible: $("#Select2").attr("name"),
        id_Edificio: $("#SelectEdificioR").attr("name"),
        fecha: $("#FechaR").attr("value"),
        costo: $("#CostoMantenimientoPreventivo").attr("value"),
        descripcion: $("#Descripcion").attr("value")
    }

    fv = new formValidator();
    borrarErrores();
    if (fv.isEmpty(document.getElementById("CodigoDocumento").value)){
        fv.raiseError("Por favor ingrese un CODIGO DE CONTRATO");
        document.getElementById("errorCodigoDocumentoR").innerHTML = "";
    }else{
        if(isNaN(document.getElementById("CodigoDocumento").value)){
            fv.raiseError("Solo se permite el ingreso de NUMEROS");
            document.getElementById("errorCodigoDocumentoR").innerHTML = "Solo se permiten NUMEROS";
        }
    }

    if (fv.isEmpty(document.getElementById("SelectEdificioR").value)) {
        fv.raiseError("Debe seleccionar un EDIFICIO");
        document.getElementById("errorEdificioR").innerHTML = "";
    }

    if (fv.isEmpty(document.getElementById("Select2").value)) {
        fv.raiseError("Debe seleccionar un MANTENIBLE");
        document.getElementById("errorMantenibleR").innerHTML = "";
    }

    if (fv.isEmpty(document.getElementById("FechaR").value)){
        fv.raiseError("Por favor ingrese la FECHA");
        document.getElementById("errorFechaR").innerHTML = "";
    }

    if (fv.isEmpty(document.getElementById("CostoMantenimientoPreventivo").value)){
        fv.raiseError("Por favor ingrese el COSTO");
        document.getElementById("errorCostoR").innerHTML = "";
    }else{
        if(isNaN(document.getElementById("CostoMantenimientoPreventivo").value)){
            fv.raiseError("Solo se permite el ingreso de NUMEROS");
            document.getElementById("errorCostoR").innerHTML = "Solo se permiten NUMEROS";
        }
    }

    if (fv.isEmpty(document.getElementById("Descripcion").value)){
        fv.raiseError("Por favor ingrese la DESCRIPCION");
        document.getElementById("errorDescripcionR").innerHTML = "";
    }

    if (fv.numErrors() < 1) {
        console.log(enviarRegistroMantenimientoPreventivo);
    
        var jsonData = JSON.stringify(enviarRegistroMantenimientoPreventivo);

        $.ajax({
            type: "POST",
            data: jsonData,
            dataType: "json",
            contentType: "application/json; charset=utf-8",
            url: "registrarMantenimientoPreventivo",
            beforeSend: esperarRegitro,
            success: llegadaRegistro
        });
        return true;
    }
    else {
//        fv.displayErrors();
        return false;
    }
}


function esperarRegitro() {

}

function llegadaRegistro(data) {
    alert(data.me);
    window.history.back();
}


function esperarLista() {
//    alert($("#ProveedorMantenimientoPreventivo").val());
//    alert($("#ManteniblesAutocompletado").val());
//    alert($("#FechaInicio").val());
//    alert($("#FechaFin").val());
}

function buscarContrato() {

    var enviar = {
        NombreEdificio: $("#EdificioAutocompletado").val(),
        NombreProveedor: $("#ProveedorAutocompletado").val(),
        NombreMantenible: $("#ManteniblesAutocompletado").val(),
        fecha_inicial: $("#FechaInicio").val(),
        fecha_final: $("#FechaFin").val()
    }

    var jsonData = JSON.stringify(enviar);

    $.ajax({
        type: "POST",
        data: jsonData,
        dataType: "json",
        contentType: "application/json; charset=utf-8",
        url: "buscarContratoPreventivo",
        beforeSend: esperarLista(),
        success: llegadaListaContrato
    });
}

function llegadaListaContrato(data) {
    console.log(data);
    var lista = data.ListaContratoPreventivo;
    var escritor = "";
    //idContrato, nombreEdificio, nombreProveedor, fechaRegistro, periodo, mantenible;
    if (lista.length > 0) {
        escritor += "<table id='tablaContrato'>" +
                    "<thead>" +
                        "<th class=" + "\"style1\" " + "style=" + "\"width:30px;\" " + "></th>" +
                        '<th>Cod. Contrato</th>' +
                        "<th style=\"display:none\">Edificio</th>" +
                        "<th style=\"display:none\">idEdificio</th>" +
                        '<th>Proveedor</th>' +
                        '<th>Fecha Registro</th>' +
                        "<th>Periodo</th>" +
                        '<th>Mantenible</th>' +
                        "<th style=\"display:none\">idMantenible</th>" +
        //"<th class=" + "\"style1\" "+ "style="+"\"width:30px;\" "+"></th>"+
                    "</thead>";
        escritor += '<tbody id="bodyMP">';

        $.each(lista, function (i, item) {
            escritor += "<tr>";
            escritor += "<td class=" + "\"style1\"" + " style=" + "\width:30px;\"" + " align=" + "\"center\"" + "><input id=" + "\"RadioButton1\"" + " name=" + "\"R1\"" + " type=" + "\"radio\"" + " value=" + "\"1\"" + " style=" + "\"width:30px;\"/></td>";
            escritor += '<td style="width:auto;">' + item.id_contrato_preventivo + '</td>';
            escritor += '<td style="display:none;">' + item.NombreEdificio + '</td>';
            escritor += '<td style="display:none;">' + item.id_edificio + '</td>';
            escritor += '<td style="width:auto;">' + item.NombreProveedor + '</td>';
            escritor += '<td style="width:auto;">' + item.fecha_registro + '</td>';
            escritor += '<td>' + item.periodo + '</td>';
            escritor += '<td style="width:auto;">' + item.NombreMantenible + '</td>';
            escritor += '<td style="display:none">' + item.id_mantenible + '</td>';
            //escritor += "<td class="+"\"style1\""+ " style="+"\width:30px;\""+" align="+"\"center\""+"><input id="+"\"RadioButton1\""+" name="+"\"R1\""+ " type="+"\"radio\""+" value="+"\"1\""+" style="+"\"width:30px;\"/></td>";
            escritor += "</tr>";
        });

        escritor += "</toby>";

        escritor += "</table>";

        $("#tablaDinamica").html(escritor);
        if (lista.length > 0) {
            $(function () {
                /* initiate the plugin */
                $("#holderMP").jPages({//id del div de la paginacion
                    containerID: "bodyMP", //cuerpo es el id del tbody de mi tabla
                    perPage: 10, // numero de filas por pagina
                    delay: 20,
                    startPage: 1, // pagina que se visualizara en la pantalla
                    midRange: 3, // rango de numeros de pagina q se muestran en el div de paginacion, aqui es dond aparecen los puntos suspensivos: 1,2,3...10
                    animation: "flipInY"
                });
            });
//            setearValores('tablaContrato', 10);
//            init();
//            showPageNav('pager', 'NavPosicionCP');
//            showPage(1);
        }
    } else {
        escritor = "<p>No se encontró ninguna coincidencia</p>";
        $("#tablaDinamica").html(escritor);
        $("#holderMP").hide();
        //$("#NavPosicionCP").hide();
    }
//    $("#tablaDinamica").html(escritor);
//    if (lista.length > 0) {
//        setearValores('tablaContrato', 3);
//        init();
//        showPageNav('pager', 'NavPosicionCP');
//        showPage(1);
//    }
}

function buscarMantenimientoPreventivo() {

    var enviarBusquedaMantenimientoPreventivo = {
        NombreEdificio: $("#SelectEdificioB").val(),
        NombreProveedor: $("#Select1").val(),
        id_Mantenible: $("#SelectActivo").attr("value"),
        FechaInicio: $("#FechaInicioB").val(),
        FechaFin: $("#FechaFinB").val()
    }

    var jsonData = JSON.stringify(enviarBusquedaMantenimientoPreventivo);

    $.ajax({
        type: "POST",
        data: jsonData,
        dataType: "json",
        contentType: "application/json; charset=utf-8",
        url: "buscarMantenimientoPreventivo",
        beforeSend: esperarListaBusquedaMantenimientoPreventivo(),
        success: llegadaListaMantenimientoPreventivo
    });
}

function buscarMantenimientoPreventivo2() {

    var enviarBusquedaMantenimientoPreventivo = {
        id_mantenimiento_preventivo: $("#MantenimientoPreventivoModificar").attr("value"),
        NombreProveedor: $("#Select1").attr("value"),
        id_Mantenible: $("#SelectActivo").attr("value"),
        FechaInicio: $("#FechaInicioB").attr("value"),
        FechaFin: $("#FechaFinB").attr("value")
    }

    var jsonData = JSON.stringify(enviarBusquedaMantenimientoPreventivo);

    $.ajax({
        type: "POST",
        data: jsonData,
        dataType: "json",
        contentType: "application/json; charset=utf-8",
        url: "buscarMantenimientoPreventivo",
        beforeSend: esperarListaBusquedaMantenimientoPreventivo(),
        success: llegadaListaMantenimientoPreventivo
    });
}

function esperarListaBusquedaMantenimientoPreventivo() {
    //alert($("#SelectActivo").val());
}

/*cambiar la base de datos para que mantenimiento_preventivo se relacione con mantenible*/
function llegadaListaMantenimientoPreventivo(data) {
    console.log(data);
    var lista = data.ListaMantenimientoPreventivo;
    var escritor = "";
    //idMantPrev, idMantenible, nombreMantenible, idContrato, idProveedor, proveedor, fecha, descripcion, monto;
    if ((lista+"").length > 0) {
        escritor += "<table id='resultados' style="+"\"margin-left:auto; margin-right:auto;\""+">" +
                    "<thead>" +
                        "<th class=" + "\"style1\" " + "style=" + "\"width:30px;\" " + "></th>" +
                        "<th>Cod. Mant. Prev.</th>" +
                        "<th style=\"display:none\">idMantenible</th>" +
                        "<th>Mantenible</th>" +
                        '<th style="display:none">Cod. Cont.Prev.</th>' +
                        "<th style=\"display:none\">idProveedor</th>" +
                        "<th>Proveedor</th>" +
                        "<th>Fecha</th>" +
                        "<th>Monto</th>" +
                        "<th>Descripcion</th>" +
        //                        "<th class=" + "\"style1\" " + "style=" + "\"width:30px;\" " + "></th>"+
                    "</thead>";

        escritor += '<tbody id="bodyResultados">';
        $.each(lista, function (i, item) {
            escritor += "<tr>";
            escritor += "<td class=" + "\"style1\"" + " style=" + "\width:30px;\"" + " align=" + "\"center\"" + "><input id=" + "\"RadioButton1\"" + " name=" + "\"R1\"" + " type=" + "\"radio\"" + " value=" + "\"1\"" + " style=" + "\"width:30px;\"/></td>";
            escritor += '<td>' + item.id_mantenimiento_preventivo + '</td>';
            escritor += '<td style=\"display:none\">' + item.id_Mantenible + '</td>';
            escritor += '<td>' + item.NombreMantenible + '</td>';
            escritor += '<td style="display:none">' + item.id_contrato_preventivo + '</td>';
            escritor += '<td style=\"display:none\">' + item.id_proveedor + '</td>';
            escritor += '<td>' + item.NombreProveedor + '</td>';
            escritor += '<td>' + item.fecha + '</td>';
            escritor += '<td>' + item.costo + '</td>';
            escritor += '<td>' + item.descripcion + '</td>';
            //        escritor += "<td class=" + "\"style1\"" + " style=" + "\width:30px;\"" + " align=" + "\"center\"" + "><input id=" + "\"RadioButton1\"" + " name=" + "\"R1\"" + " type=" + "\"radio\"" + " value=" + "\"1\"" + " style=" + "\"width:30px;\"/></td>";
            escritor += "</tr>";
        });
        escritor += "</toby>";
        escritor += "</table>";

        $("#botonModificarB").show();
        $("#botonEliminarB").show();
        $("#TablaDinamicaBusqueda").html(escritor);

        if ((lista + "").length > 0) {
            $(function () {
                /* initiate the plugin */
                $("#holderBMP").jPages({//id del div de la paginacion
                    containerID: "bodyResultados", //cuerpo es el id del tbody de mi tabla
                    perPage: 10, // numero de filas por pagina
                    delay: 20,
                    startPage: 1, // pagina que se visualizara en la pantalla
                    midRange: 3, // rango de numeros de pagina q se muestran en el div de paginacion, aqui es dond aparecen los puntos suspensivos: 1,2,3...10
                    animation: "flipInY"
                });
            });
//            setearValores('resultados', 10);
//            init();
//            showPageNav('pager', 'NavPosicion');
//            showPage(1);
        }
    } else {
        escritor = "<p>No se encontró ninguna coincidencia</p>";
        $("#botonModificarB").hide();
        $("#botonEliminarB").hide();
        $("#TablaDinamicaBusqueda").html(escritor);
        $("#holderBMP").hide();
        //$("#NavPosicion").hide();
    }
}

//paginacion
function setearValores(tableNameP, itemsPerPageP) {
    tableName = tableNameP;
    itemsPerPage = itemsPerPageP;
}

function showRecords(from, to) {
    var rows = document.getElementById(tableName).rows;
    // i starts from 1 to skip table header row
    for (var i = 1; i < rows.length; i++) {
        if (i < from || i > to)
            rows[i].style.display = 'none';
        else
            rows[i].style.display = '';
    }
}

function showPage(pageNumber) {
    if (!inited) {
        alert("Error 1 !");
        return;
    }

    var oldPageAnchor = document.getElementById('pg' + currentPage);
    oldPageAnchor.className = 'pg-normal';

    currentPage = pageNumber;
    var newPageAnchor = document.getElementById('pg' + currentPage);
    newPageAnchor.className = 'pg-selected';

    var from = (pageNumber - 1) * itemsPerPage + 1;
    var to = from + itemsPerPage - 1;
    showRecords(from, to);
}

function prev() {
    if (currentPage > 1)
        showPage(currentPage - 1);
}

function next() {
    if (currentPage < pages) {
        showPage(currentPage + 1);
    }
}

function init() {
    var rows = document.getElementById(tableName).rows;
    var records = (rows.length - 1);
    pages = Math.ceil(records / itemsPerPage);
    inited = true;
}

function showPageNav(pagerName, positionId) {
    if (!inited) {
        alert("Error 2 !");
        return;
    }
    var element = document.getElementById(positionId);

    var pagerHtml = '<span onclick="prev();" class="pg-normal" style="size:12px;" onmouseover="this.style.cursor=\'pointer\'"> &#171 Anterior </span> | ';
    for (var page = 1; page <= pages; page++)
        pagerHtml += '<span id="pg' + page + '" class="pg-normal" onclick="showPage(' + page + ');"  style="size:12px;" onmouseover="this.style.cursor=\'pointer\'">' + page + '</span> | ';
    pagerHtml += '<span onclick="next();" class="pg-normal" style="size:12px;" onmouseover="this.style.cursor=\'pointer\'"> Siguiente &#187;</span>';
    pagerHtml += '<script type="text/javascript">var pager = new Pager("resultados", 3);</script>';
    element.innerHTML = pagerHtml;
}


$(function () {
    var nameB = $("#nameB"),
            emailB = $("#emailB"),
            passwordB = $("#passwordB"),
            allFields = $([]).add(nameB).add(emailB).add(passwordB),
            tips = $(".validateTips");

    function updateTips(t) {
        tips
                .text(t)
                .addClass("ui-state-highlight");
        setTimeout(function () {
            tips.removeClass("ui-state-highlight", 1500);
        }, 500);
    }
    $("#dialog-form-modificar").dialog({
        autoOpen: false,
        height: 600,
        width: 850,
        modal: true,
        buttons: {
            "Aceptar": function () {
                var enviar = {
                    id_mantenimiento_preventivo: $("#MantenimientoPreventivoModificar").attr("value"),
                    id_Mantenible: $("#MantenibleModificar").attr("value"),
                    id_contrato_preventivo: $("#CodigoDocumentoModificar").attr("value"),
                    fecha: $("#FechaM").attr("value"),
                    costo: $("#CostoM").attr("value"),
                    descripcion: $("#DescripcionM").attr("value")
                }

                fv = new formValidator();
                borrarErroresModificar()
                if (fv.isEmpty(document.getElementById("CostoM").value)) {
                    fv.raiseError("Por favor ingrese el COSTO");
                    document.getElementById("errorCostoM").innerHTML = "";
                    /////////////////////////////////////////////
                } else {
                    if (isNaN(document.getElementById("CostoM").value)) {
                        fv.raiseError("Solo se permite el ingreso de NUMEROS");
                        document.getElementById("errorCostoM").innerHTML = "Solo se permiten NUMEROS";
                    }
                }

                if (fv.isEmpty(document.getElementById("DescripcionM").value)) {
                    fv.raiseError("Por favor ingrese la DESCRIPCION");
                    document.getElementById("errorDescripcionM").innerHTML = "";
                }

                if (fv.numErrors() === 0) {
                    var jsonData = JSON.stringify(enviar);

                    $.ajax({
                        type: "POST",
                        data: jsonData,
                        dataType: "json",
                        contentType: "application/json; charset=utf-8",
                        url: "modificarMantenimientoPreventivo",
                        success: function (data) {
                            alert(data.me);
                            buscarMantenimientoPreventivo2();
                        }
                    });
                    $(this).dialog("close");
                }
                else {
                    //  fv.displayErrors();
                }
            },
            Cancel: function () {
                $(this).dialog("close");
            }
        },
        close: function () {
            allFields.val("").removeClass("ui-state-error");
        }
    });

    $("#botonModificarB").click(function () {
        if ($("input:radio[name='R1']").is(":checked")) {
            $("#dialog-form-modificar").dialog("open");
            var bValid = true;
            allFields.removeClass("ui-state-error");
            if (bValid) {
                if ($("input:radio[name='R1']:checked")) {
                    var idMantPrev, idMantenible, nombreMantenible, idContrato, idProveedor, proveedor, fecha, descripcion, monto;
                    $("input:radio[name='R1']:checked").parents("tr").children("td").each(function (index2) {
                        switch (index2) {
                            case 1:
                                idMantPrev = $(this).text();
                                break;
                            case 2:
                                idMantenible = $(this).text();
                                break;
                            case 3:
                                nombreMantenible = $(this).text();
                                break;
                            case 4:
                                idContrato = $(this).text();
                                break;
                            case 5:
                                idProveedor = $(this).text();
                                break;
                            case 6:
                                proveedor = $(this).text();
                                break;
                            case 7:
                                fecha = $(this).text();
                                break;
                            case 8:
                                monto = $(this).text();
                                break;
                            case 9:
                                descripcion = $(this).text();
                                break;
                        }
                    })
                    //alert(idMantPrev + ' - ' + idMantenible + ' - ' + nombreMantenible + ' - ' + idContrato + ' - ' + idProveedor + ' - ' + proveedor + ' - ' + fecha + ' - ' + descripcion + ' - ' + monto + ' - ' + $("input:radio[name='R1']:checked").val());
                    document.getElementById("MantenimientoPreventivoModificar").value = idMantPrev;
                    document.getElementById("MantenibleModificar").value = idMantenible;
                    document.getElementById("CodigoDocumentoModificar").value = idContrato;
                    document.getElementById("FechaM").value = fecha;
                    document.getElementById("CostoM").value = monto;
                    document.getElementById("DescripcionM").value = descripcion;
                }
            }
        }
        else {
            alert("Debe seleccionar una fila");
        }

    });

});


function mostrarTablaModificada() {

    var enviar = {
        NombreProveedor: $("#SelectProveedor").attr("value"),
        FechaInicio: $("#FechaInicioB").attr("value"),
        FechaFin: $("#FechaFinB").attr("value")
    }

    var jsonData = JSON.stringify(enviar);

    $.ajax({
        type: "POST",
        data: jsonData,
        dataType: "json",
        contentType: "application/json; charset=utf-8",
        url: "buscarEdificio",
        beforeSend: esperarLista(),
        success: llegadaLista
    });
}

//MANTENIBLE AUTOVOMPLETADO
$(function(){
    $( "#ManteniblesAutocompletado" ).autocomplete({
            source: function( request, response ) {
                $.ajax({
                    type: "POST",
                    data: { NombreMantenible: $("#ManteniblesAutocompletado").val() },
                    dataType: "json",
                    url: "TodosMisMantenibles",
                    success: function( data ) {
                        response( $.map( data.listaTodosMisMantenibles, function( item ) {
                            return {
                                label: item.NombreMantenible,
                                value: item.NombreMantenible
                            }
                        }));
                    }
                });
            },
            minLength: 1,
            open: function() {
                $( this ).removeClass( "ui-corner-all" ).addClass( "ui-corner-top" );
            },
            close: function() {
                $( this ).removeClass( "ui-corner-top" ).addClass( "ui-corner-all" );
            }
    });
 });

 function eliminarMantenimientoPreventivo() {
    if ($("input:radio[name='R1']").is(":checked")){
        var idMantPrev, idMantenible, nombreMantenible, idContrato, idProveedor, proveedor, fecha, descripcion, monto;
        $("input:radio[name='R1']:checked").parents("tr").children("td").each(function (index2) {
            switch (index2) {
                        case 1:
                            idMantPrev = $(this).text();
                            break;
                        case 2:
                            idMantenible = $(this).text();
                            break;
                        case 3:
                            nombreMantenible = $(this).text();
                            break;
                        case 4:
                            idContrato = $(this).text();
                            break;
                        case 5:
                            idProveedor = $(this).text();
                            break;
                        case 6:
                            proveedor = $(this).text();
                            break;
                        case 7:
                            fecha = $(this).text();
                            break;
                        case 8:
                            monto = $(this).text();
                            break;
                        case 9:
                            descripcion = $(this).text();
                            break;
                    }
        })

        var question = confirm("Desea eliminar el mantenimiento preventivo seleccionado");

        if (question != 0) {
            var enviar = {
                id_mantenimiento_preventivo: idMantPrev
            }

            var jsonData = JSON.stringify(enviar);

            $.ajax({
                type: "POST",
                data: jsonData,
                dataType: "json",
                contentType: "application/json; charset=utf-8",
                url: "eliminarMantenimientoPreventivo",
                beforeSend: esperarEliminarMantenimientoPreventivo(),
                success: llegadaEliminarMantenimientoPreventivo
            });
        }
    }
    else {
        alert("Debe seleccionar una fila");
    }

}

function esperarEliminarMantenimientoPreventivo() {
}

function llegadaEliminarMantenimientoPreventivo(data) {
    alert("Eliminación correcta");
    buscarMantenimientoPreventivo2();
}

//Edificio autocompletado
$(function () {
    $("#EdificioAutocompletado").autocomplete({
        source: function (request, response) {
            $.ajax({
                type: "POST",
                data: { Nombre: $("#EdificioAutocompletado").val() },
                dataType: "json",
                url: "cargarEdificios",
                success: function (data) {
                    response($.map(data.listaEdificio, function (item) {
                        return {
                            value: item.Nombre
                        }
                    }));
                }
            });
        },
        minLength: 3,
        open: function () {
            $(this).removeClass("ui-corner-all").addClass("ui-corner-top");
        },
        close: function () {
            $(this).removeClass("ui-corner-top").addClass("ui-corner-all");
        }
    });
});

//proveedor autocompletado
$(function () {
    $("#ProveedorAutocompletado").autocomplete({
        source: function (request, response) {
            $.ajax({
                type: "POST",
                data: { NombreProveedor: $("#ProveedorAutocompletado").val() },
                dataType: "json",
                url: "cargarProveedores",
                success: function (data) {
                    response($.map(data.listaProveedores, function (item) {
                        return {
                            value: item.NombreProveedor
                        }
                    }));
                }
            });
        },
        minLength: 2,
        open: function () {
            $(this).removeClass("ui-corner-all").addClass("ui-corner-top");
        },
        close: function () {
            $(this).removeClass("ui-corner-top").addClass("ui-corner-all");
        }
    });
});